Entity Framework (EF) হলো একটি Object-Relational Mapping (ORM) টুল, যা সি# প্রোগ্রামিং ভাষায় ডেটাবেস পরিচালনা করতে ব্যবহার করা হয়। এটি ডেটাবেসের টেবিলগুলিকে সি# অবজেক্ট হিসেবে ব্যবহার করতে দেয় এবং ডেটা ম্যানিপুলেশন আরও সহজ করে তোলে। Entity Framework ব্যবহার করলে সরাসরি SQL কুয়েরি লেখার প্রয়োজন হয় না; এটি ডেটাবেস অপারেশনের জন্য C# কোডে উচ্চ স্তরের (high-level) মেথড প্রদান করে।


Entity Framework এর সুবিধা

  • SQL না লিখেও ডেটাবেস অপারেশন: ডেটাবেসের জন্য সরাসরি SQL কোয়েরি লেখার প্রয়োজন নেই; এর পরিবর্তে লিনকু (LINQ) ব্যবহার করে ডেটা ফিল্টার, আপডেট, এবং ম্যানিপুলেট করা যায়।
  • Object-Oriented ডেভেলপমেন্ট: ডেটাবেস টেবিলকে সরাসরি সি# ক্লাস হিসেবে ব্যবহার করা যায়।
  • Cross-Database Compatibility: SQL Server, MySQL, PostgreSQL সহ বিভিন্ন ডেটাবেসের সাথে কাজ করে।
  • কোড ম্যানেজমেন্ট সহজ: কোড ফার্স্ট এবং ডাটাবেস ফার্স্ট পদ্ধতিতে ব্যবহার করা যায়।

Entity Framework এর পদ্ধতি

Entity Framework তিনটি পদ্ধতিতে কাজ করতে পারে:

  1. Code-First: প্রোগ্রামার প্রথমে C# মডেল ক্লাস তৈরি করে এবং তারপর Entity Framework এই মডেল থেকে ডাটাবেস তৈরি করে।
  2. Database-First: একটি বিদ্যমান ডাটাবেস থেকে মডেল তৈরি করে।
  3. Model-First: প্রথমে গ্রাফিকাল মডেল তৈরি করা হয় এবং তারপর ডেটাবেস তৈরি করা হয়।

Entity Framework ইনস্টলেশন

Entity Framework ব্যবহার করতে হলে প্রথমে NuGet Package Manager ব্যবহার করে Entity Framework ইনস্টল করতে হবে।

  1. Visual Studio তে Package Manager Console এ যান।
  2. নিচের কমান্ডটি চালান:
Install-Package EntityFramework

Code-First উদাহরণ

Code-First পদ্ধতিতে প্রথমে একটি C# মডেল ক্লাস তৈরি করা হয়, যা ডেটাবেস টেবিলের প্রতিনিধিত্ব করে।

১. মডেল তৈরি করা

public class Employee
{
    public int ID { get; set; }
    public string Name { get; set; }
    public int Age { get; set; }
}

এখানে, Employee নামের ক্লাসটি একটি টেবিল হিসেবে ব্যবহৃত হবে এবং এর ID, Name, এবং Age প্রপার্টিগুলো টেবিলের কলাম হিসেবে কাজ করবে।

২. DbContext তৈরি করা

DbContext ক্লাস Entity Framework এর মূল কাঠামো, যা ডাটাবেস অপারেশন পরিচালনা করে। এতে ডেটাবেস টেবিলের জন্য DbSet ব্যবহার করা হয়।

using System.Data.Entity;

public class MyDbContext : DbContext
{
    public DbSet<Employee> Employees { get; set; }
}

৩. ডেটা যোগ করা, পড়া, আপডেট করা, এবং মুছে ফেলা

Entity Framework এর মাধ্যমে CRUD (Create, Read, Update, Delete) অপারেশন করা খুবই সহজ।

ডেটা যোগ করা

using (var context = new MyDbContext()) {    var employee = new Employee    {        Name = "John Doe",        Age = 30    };        context.Employees.Add(employee);    context.SaveChanges(); }

ডেটা পড়া

using (var context = new MyDbContext())
{
    var employees = context.Employees.ToList();
    foreach (var employee in employees)
    {
        Console.WriteLine("ID: " + employee.ID + ", Name: " + employee.Name);
    }
}

ডেটা আপডেট করা

using (var context = new MyDbContext())
{
    var employee = context.Employees.FirstOrDefault(e => e.ID == 1);
    if (employee != null)
    {
        employee.Age = 35;
        context.SaveChanges();
    }
}

ডেটা মুছে ফেলা

using (var context = new MyDbContext())
{
    var employee = context.Employees.FirstOrDefault(e => e.ID == 1);
    if (employee != null)
    {
        context.Employees.Remove(employee);
        context.SaveChanges();
    }
}

LINQ এর মাধ্যমে কোয়েরি করা

Entity Framework LINQ (Language-Integrated Query) সমর্থন করে, যা SQL কুয়েরির মতো কাজ করে।

using (var context = new MyDbContext())
{
    var employees = context.Employees
                           .Where(e => e.Age > 25)
                           .OrderBy(e => e.Name)
                           .ToList();

    foreach (var employee in employees)
    {
        Console.WriteLine("Name: " + employee.Name + ", Age: " + employee.Age);
    }
}

Database-First উদাহরণ

Database-First পদ্ধতিতে, প্রথমে একটি বিদ্যমান ডাটাবেস থেকে মডেল তৈরি করা হয়। Visual Studio এ Database-First পদ্ধতি ব্যবহার করার ধাপগুলো নিচে দেওয়া হলো:

  1. Add New Item -> ADO.NET Entity Data Model নির্বাচন করুন।
  2. Model নাম দিন এবং EF Designer from Database নির্বাচন করুন।
  3. ডাটাবেস কানেকশন সেট করুন এবং টেবিলগুলো সিলেক্ট করে Finish ক্লিক করুন।

Entity Framework স্বয়ংক্রিয়ভাবে ক্লাস এবং DbContext তৈরি করে দেয়।


সংক্ষেপে Entity Framework

বৈশিষ্ট্যব্যবহার
Code-Firstপ্রথমে কোড লিখে ডেটাবেস তৈরি করা
Database-Firstপ্রথমে ডাটাবেস থেকে মডেল তৈরি করা
CRUD অপারেশনAdd, Read, Update, এবং Delete সহজে সম্পন্ন করা যায়
LINQ সমর্থনডেটার উপর কোয়েরি চালাতে LINQ ব্যবহার করা যায়

Entity Framework ব্যবহারে সি# ডেভেলপাররা খুব সহজে ডেটাবেস পরিচালনা করতে পারে, কোড ফার্স্ট ও ডেটাবেস ফার্স্ট পদ্ধতিতে ডেটা ম্যানেজমেন্ট আরো সহজ হয় এবং LINQ এর মাধ্যমে জটিল কুয়েরিগুলো সহজে করা সম্ভব।

Content added || updated By

আরও দেখুন...

Promotion